<template>
  <el-form :model="loginForm" :rules="rules2" ref="loginForm" label-position="left" label-width="0px" class="demo-ruleForm login-container">
    <h3 class="title">系统登录</h3>
    <el-form-item prop="username">
      <el-input type="text" v-model="loginForm.username" auto-complete="off" placeholder="账号"></el-input>
    </el-form-item>
    <el-form-item prop="password">
      <el-input type="password" v-model="loginForm.password" auto-complete="off" placeholder="密码"></el-input>
    </el-form-item>
    <el-checkbox v-model="checked" checked class="remember">记住密码</el-checkbox>
    <el-form-item style="width:100%;">
      <el-button type="primary" style="width:47%;" @click.native.prevent="login" :loading="logining">登录</el-button>
      <!--<el-button @click.native.prevent="handleReset2">重置</el-button>-->
      <el-button type="primary" style="width:47%;" @click.native.prevent="goShopRegister" :loading="logining">店铺注册</el-button>
    </el-form-item>
  </el-form>
</template>

<script>
  import { requestLogin } from '../api/api';
  //import NProgress from 'nprogress'
  export default {
    data() {
      return {
        logining: false,
        loginForm: {
          username: 'admin',
          password: '123456',
          type:"0",
        },
        rules2: {
          username: [
            { required: true, message: '请输入账号', trigger: 'blur' },
            //{ validator: validaePass }
          ],
          password: [
            { required: true, message: '请输入密码', trigger: 'blur' },
            //{ validator: validaePass2 }
          ]
        },
        checked: true
      };
    },
    methods: {
      goShopRegister(){
        this.$router.push({ path: '/shopRegister' });

      },
      handleReset2() {
        this.$refs.loginForm.resetFields();
      },
      login(ev) {
         var _this = this;
         //自动开启表单校验
         this.$refs.loginForm.validate((valid) => {
           if (valid) {
             //开启忙等按钮
             this.logining=true
             //发送请求进行登录
             this.$http.post("/login/account",this.loginForm)
             .then(result=>{
               //关闭忙等
               this.logining=false
               result=result.data
               if (result.success){
                 //登陆成功提示
                 this.$message({
                   message: '登陆成功',
                   type: 'success'
                 });
                 //登陆成功需要把信息放到localstorage
                 let{token,logininfo} = result.resultObj
                 localStorage.setItem("token",token)
                 localStorage.setItem("logininfo",logininfo)
                 // 跳转到后台首页
                 this.$router.push({path: '/echarts'});
               }else {
                 // 2.3.登录失败提示用户
                 this.$message({
                   message: result.msg,
                   type: 'error'
                 });
               }

             })
             .catch(result=>{
               //关闭忙等
               this.logining=false
               // 2.3.登录失败提示用户
               this.$message({
                 message: result.msg,
                 type: 'error'
               });


             })
        //     //_this.$router.replace('/table');
        //     this.logining = true;
        //     //NProgress.start();
        //     var loginParams = { username: this.loginForm.username, password: this.loginForm.password };
        //     requestLogin(loginParams).then(data => {
        //       this.logining = false;
        //       //NProgress.done();
        //       let { msg, code, user } = data;
        //       if (code !== 200) {
        //         this.$message({
        //           message: msg,
        //           type: 'error'
        //         });
        //       } else {
        //         sessionStorage.setItem('user', JSON.stringify(user));
        //         this.$router.push({ path: '/table' });
        //       }
        //     });
        //   } else {
        //     console.log('error submit!!');
        //     return false;
          }else {
             //表单校验失败
             console.log('error submit!!');
             return false;
           }
         });
      }
    }
  }

</script>

<style lang="scss" scoped>
  .login-container {
    /*box-shadow: 0 0px 8px 0 rgba(0, 0, 0, 0.06), 0 1px 0px 0 rgba(0, 0, 0, 0.02);*/
    -webkit-border-radius: 5px;
    border-radius: 5px;
    -moz-border-radius: 5px;
    background-clip: padding-box;
    margin: 180px auto;
    width: 350px;
    padding: 35px 35px 15px 35px;
    background: #fff;
    border: 1px solid #eaeaea;
    box-shadow: 0 0 25px #cac6c6;
    .title {
      margin: 0px auto 40px auto;
      text-align: center;
      color: #505458;
    }
    .remember {
      margin: 0px 0px 35px 0px;
    }
  }
</style>
